


function Pro_Base(a_id, a_proid, a_name, a_type, a_action)
{
	this.id = a_id;
	this.name = a_name;
	this.pro_id = a_proid;
	this.type = a_type;
	this.action = a_action;
}

/**
 * login 1001
 * @returns
 */
function Pro_Login(a_username, a_password)
{
	Pro_Base.apply(this, [501, "501", "send_login", "normal", "goto_square"]);
	this.username = a_username;
	this.password = a_password;
}
extend_usemid(Pro_Login, Pro_Base);

/**
 * joinhall 1051
 * @param a_room_number
 * @returns
 */
function Pro_JoinHall(a_hall_number)
{
	Pro_Base.apply(this, [851, "851", "send_joinhall", "normal", "goto_hall"]);
	this.a_hall_number = a_hall_number;
}
extend_usemid(Pro_JoinHall, Pro_Base);


/**
 * joinhall 1051
 * @param a_room_number
 * @returns
 */
function Pro_JoinRoom(a_room_number)
{
	Pro_Base.apply(this, [1061, "1061", "send_joinroom", "normal", "goto_room"]);
	this.room_number = a_room_number;
}
extend_usemid(Pro_JoinRoom, Pro_Base);


/**
 * joinhall 1055
 * @param a_room_number
 * @returns
 */
function Pro_StartGame(a_room_number)
{
	Pro_Base.apply(this, [5051, "5051", "send_startgame", "normal", "goto_game"]);
	this.room_number = a_room_number;
}
extend_usemid(Pro_StartGame, Pro_Base);


/**
 * joinhall 1055
 * @param a_room_number
 * @returns
 */
function Pro_ChooseHero(hero_factid)
{
	Pro_Base.apply(this, [1061, "1061", "send_choosehero", "normal", "goto_game"]);
	this.hero_factid = hero_factid;
}
extend_usemid(Pro_ChooseHero, Pro_Base);

/**
 * allothero 1059
 * @param a_room_number
 * @returns
 */
function Pro_AllotHero()
{
	Pro_Base.apply(this, [1059, "1059", "send_allothero", "normal", "goto_game"]);
}
extend_usemid(Pro_AllotHero, Pro_Base);

/**
 * allotcardhand 1063
 * @param a_room_number
 * @returns
 */
function Pro_AllotCardHand(room_number)
{
	Pro_Base.apply(this, [1063, "1063", "send_allotcardhand", "normal", "goto_game"]);
	this.room_number = room_number;
}
extend_usemid(Pro_AllotCardHand, Pro_Base);

